﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x0200100D RID: 4109
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class RogueTournExpInfo : IMessage<RogueTournExpInfo>, IMessage, IEquatable<RogueTournExpInfo>, IDeepCloneable<RogueTournExpInfo>, IBufferMessage
	{
		// Token: 0x170033F9 RID: 13305
		// (get) Token: 0x0600B7D4 RID: 47060 RVA: 0x001F00B4 File Offset: 0x001EE2B4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<RogueTournExpInfo> Parser
		{
			get
			{
				return RogueTournExpInfo._parser;
			}
		}

		// Token: 0x170033FA RID: 13306
		// (get) Token: 0x0600B7D5 RID: 47061 RVA: 0x001F00BB File Offset: 0x001EE2BB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return RogueTournExpInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x170033FB RID: 13307
		// (get) Token: 0x0600B7D6 RID: 47062 RVA: 0x001F00CD File Offset: 0x001EE2CD
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return RogueTournExpInfo.Descriptor;
			}
		}

		// Token: 0x0600B7D7 RID: 47063 RVA: 0x001F00D4 File Offset: 0x001EE2D4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueTournExpInfo()
		{
		}

		// Token: 0x0600B7D8 RID: 47064 RVA: 0x001F00E7 File Offset: 0x001EE2E7
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueTournExpInfo(RogueTournExpInfo other) : this()
		{
			this.exp_ = other.exp_;
			this.takenLevelRewards_ = other.takenLevelRewards_.Clone();
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600B7D9 RID: 47065 RVA: 0x001F011D File Offset: 0x001EE31D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueTournExpInfo Clone()
		{
			return new RogueTournExpInfo(this);
		}

		// Token: 0x170033FC RID: 13308
		// (get) Token: 0x0600B7DA RID: 47066 RVA: 0x001F0125 File Offset: 0x001EE325
		// (set) Token: 0x0600B7DB RID: 47067 RVA: 0x001F012D File Offset: 0x001EE32D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Exp
		{
			get
			{
				return this.exp_;
			}
			set
			{
				this.exp_ = value;
			}
		}

		// Token: 0x170033FD RID: 13309
		// (get) Token: 0x0600B7DC RID: 47068 RVA: 0x001F0136 File Offset: 0x001EE336
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<uint> TakenLevelRewards
		{
			get
			{
				return this.takenLevelRewards_;
			}
		}

		// Token: 0x0600B7DD RID: 47069 RVA: 0x001F013E File Offset: 0x001EE33E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as RogueTournExpInfo);
		}

		// Token: 0x0600B7DE RID: 47070 RVA: 0x001F014C File Offset: 0x001EE34C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(RogueTournExpInfo other)
		{
			return other != null && (other == this || (this.Exp == other.Exp && this.takenLevelRewards_.Equals(other.takenLevelRewards_) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600B7DF RID: 47071 RVA: 0x001F019C File Offset: 0x001EE39C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.Exp != 0U)
			{
				num ^= this.Exp.GetHashCode();
			}
			num ^= this.takenLevelRewards_.GetHashCode();
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600B7E0 RID: 47072 RVA: 0x001F01E9 File Offset: 0x001EE3E9
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600B7E1 RID: 47073 RVA: 0x001F01F1 File Offset: 0x001EE3F1
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600B7E2 RID: 47074 RVA: 0x001F01FC File Offset: 0x001EE3FC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.Exp != 0U)
			{
				output.WriteRawTag(56);
				output.WriteUInt32(this.Exp);
			}
			this.takenLevelRewards_.WriteTo(ref output, RogueTournExpInfo._repeated_takenLevelRewards_codec);
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600B7E3 RID: 47075 RVA: 0x001F024C File Offset: 0x001EE44C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.Exp != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Exp);
			}
			num += this.takenLevelRewards_.CalculateSize(RogueTournExpInfo._repeated_takenLevelRewards_codec);
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600B7E4 RID: 47076 RVA: 0x001F02A0 File Offset: 0x001EE4A0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(RogueTournExpInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.Exp != 0U)
			{
				this.Exp = other.Exp;
			}
			this.takenLevelRewards_.Add(other.takenLevelRewards_);
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600B7E5 RID: 47077 RVA: 0x001F02ED File Offset: 0x001EE4ED
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600B7E6 RID: 47078 RVA: 0x001F02F8 File Offset: 0x001EE4F8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 56U)
				{
					if (num != 72U && num != 74U)
					{
						this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
					}
					else
					{
						this.takenLevelRewards_.AddEntriesFrom(ref input, RogueTournExpInfo._repeated_takenLevelRewards_codec);
					}
				}
				else
				{
					this.Exp = input.ReadUInt32();
				}
			}
		}

		// Token: 0x04004A31 RID: 18993
		private static readonly MessageParser<RogueTournExpInfo> _parser = new MessageParser<RogueTournExpInfo>(() => new RogueTournExpInfo());

		// Token: 0x04004A32 RID: 18994
		private UnknownFieldSet _unknownFields;

		// Token: 0x04004A33 RID: 18995
		public const int ExpFieldNumber = 7;

		// Token: 0x04004A34 RID: 18996
		private uint exp_;

		// Token: 0x04004A35 RID: 18997
		public const int TakenLevelRewardsFieldNumber = 9;

		// Token: 0x04004A36 RID: 18998
		private static readonly FieldCodec<uint> _repeated_takenLevelRewards_codec = FieldCodec.ForUInt32(74U);

		// Token: 0x04004A37 RID: 18999
		private readonly RepeatedField<uint> takenLevelRewards_ = new RepeatedField<uint>();
	}
}
